package com.zzyl.nursing.dto.member;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;

/**
 * 预约提交DTO（接收前端预约请求参数）
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class ReservationDTO {

    /**
     * 预约人手机号（必填，格式校验）
     */
    @NotBlank(message = "手机号不能为空")
    @Pattern(regexp = "^1[3-9]\\d{9}$", message = "手机号格式不正确")
    private String mobile;

    /**
     * 预约人姓名（必填）
     */
    @NotBlank(message = "预约人姓名不能为空")
    private String name;

    /**
     * 预约时间（必填，格式：yyyy-MM-dd HH:mm:ss）
     */
    @NotBlank(message = "预约时间不能为空")
    private String time; // 前端传递字符串，后端可转换为LocalDateTime处理

    /**
     * 预约类型（必填，0：参观预约）
     */
    @NotNull(message = "预约类型不能为空")
    private Integer type;

    /**
     * 家人姓名（老人姓名，必填）
     */
    @NotBlank(message = "家人姓名不能为空")
    private String visitor;
}